# 写一个求值其,没有涉及赋值，变量存储等其他编译的要求


def eval(exp):
    # 能够计算98 * 54 + 54 + （ 45+3）
    # 首先要将文本文件离散，然后再确定求值顺序
    # 先去掉空格,空格在该求值表达式中是没有意义的
    exp_strip = []
    for ch in exp:
        if ch is " ":
            continue
        exp_strip.append(ch)

    # 然后提取词语
    veb = []
    num = ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
    pre = None
    for ch in exp_strip:
        # 遇到一个数字,还要考察其之前的
        if ch in num:
            if type(pre) is int:
                print(type(pre))
                pre = int(str(pre) + ch)
            else:
                # pre is None
                pre = int(ch)
                print(pre)

        else:
            if pre is not None:
                veb.append(pre)
            veb.append(ch)
            pre = None  # 很有必要

    print(veb)


exp = '  43* 33 + (33 +4)'
eval(exp)
